Apply Conflicts
The Apply Conflicts error handling policy will be preset and uneditable when the Apply changes using SQL MERGE task setting is enabled.
Click the Apply Conflicts sub-tab and then click Change to Task Policy to configure the following:
No record found for applying a DELETE: Click the triangle to open the list and select what happens when there is a conflict with a DELETE operation. You can select one of the following from the list:
- Ignore record (default): The task continues and the error is ignored.
- Log record to the exceptions table: The task continues and the record is written to the exceptions table.
-
Suspend table: The task continues but data from the table with the error record is moved into an error state and its data is not replicated.
- Stop task: The task is stopped and manual intervention is required.
Duplicate key when applying an INSERT: Click the triangle to open the list and select what happens when there is a conflict with an INSERT operation. You can select one of the following from the list:
- Ignore record: The task continues and the error is ignored.
- Log record to the exceptions table (default): The task continues and the record is written to the exceptions table.
-
Suspend table: The task continues but data from the table with the error record is moved into an error state and its data is not replicated.
- Stop task: The task is stopped and manual intervention is required.
-
Update the existing target record: The target record with the same primary key as the INSERTED source record is updated.
-
Allow duplicates in the target: Allows duplicate primary key records to be added to the target table. When Optimize inserts is enabled, this is the only option that is available at task level error handling.
For more information on the Optimize inserts option, see Change Processing Tuning.
No record found for applying an UPDATE: Click the triangle to open the list and select what happens when there is a conflict with an UPDATE operation. You can select one of the following from the list:
- Ignore record: The task continues and the error is ignored.
- Log record to the exceptions table (default): The task continues and the record is written to the exceptions table.
-
Suspend table: The task continues but data from the table with the error record is moved into an error state and its data is not replicated
- Stop task: The task is stopped and manual intervention is required.
-
Insert the missing target record: The missing target record will be inserted into the target table. When the source endpoint is Oracle, selecting this option requires supplemental logging to be enabled for all the source table columns.
Escalate handling when apply conflicts reach (per table): Select this check box to escalate error handling when the number of apply conflicts (per table) reaches the specified amount. Valid values are 1-10,000.
-
When this option is selected and the number of conflicts reaches the specified number,
- Apply Conflicts errors are counted for each table separately when a task is run. When a task stops, the error count reverts to zero. When a task is resumed/reloaded, the number of errors for all the tables are reset.
- When working in Batch optimized apply Change Processing mode, the calculation of the Apply Conflicts amount does not include DELETE and UPDATE conflicts that were ignored (as a result of enabling the Ignore Record option described above).
Escalation action: Choose what action Replicate should perform when handling is escalated. Note that the available actions are dependent on the action selected in the drop-down lists described above.
When this option is selected and the number of conflicts reaches the specified number, only the escalation action will be performed (i.e. the original action set for the Apply conflict will not be performed).
- Log record to the exceptions table (default): The task continues and the error is written to the task log and to the exceptions table.
- Suspend table: The task continues but data from the table with the error record is moved into an error state and its data is not replicated.
- Stop task: The task is stopped and manual intervention is required.